﻿
namespace predic.Web.Host.Model
{
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.ComponentModel.DataAnnotations;
    using System.Data.Objects.DataClasses;
    using System.Linq;
    using System.ServiceModel.DomainServices.Hosting;
    using System.ServiceModel.DomainServices.Server;


    // The MetadataTypeAttribute identifies DetailMetadata as the class
    // that carries additional metadata for the Detail class.
    [MetadataTypeAttribute(typeof(Detail.DetailMetadata))]
    public partial class Detail
    {

        // This class allows you to attach custom attributes to properties
        // of the Detail class.
        //
        // For example, the following marks the Xyz property as a
        // required property and specifies the format for valid values:
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class DetailMetadata
        {

            // Metadata classes are not meant to be instantiated.
            private DetailMetadata()
            {
            }

            public string CheckedAndLoaded { get; set; }

            public int ID { get; set; }

            public int IDStudy { get; set; }

            public bool IsAudio { get; set; }

            public bool IsVideo { get; set; }

            public Study Study { get; set; }
        }
    }

    // The MetadataTypeAttribute identifies PreacherMetadata as the class
    // that carries additional metadata for the Preacher class.
    [MetadataTypeAttribute(typeof(Preacher.PreacherMetadata))]
    public partial class Preacher
    {

        // This class allows you to attach custom attributes to properties
        // of the Preacher class.
        //
        // For example, the following marks the Xyz property as a
        // required property and specifies the format for valid values:
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class PreacherMetadata
        {

            // Metadata classes are not meant to be instantiated.
            private PreacherMetadata()
            {
            }

            public string FirstName { get; set; }

            public int ID { get; set; }

            public string LastName { get; set; }

            public EntityCollection<Study> Studies { get; set; }
        }
    }

    // The MetadataTypeAttribute identifies StudyMetadata as the class
    // that carries additional metadata for the Study class.
    [MetadataTypeAttribute(typeof(Study.StudyMetadata))]
    public partial class Study
    {

        // This class allows you to attach custom attributes to properties
        // of the Study class.
        //
        // For example, the following marks the Xyz property as a
        // required property and specifies the format for valid values:
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class StudyMetadata
        {

            // Metadata classes are not meant to be instantiated.
            private StudyMetadata()
            {
            }

            public EntityCollection<Detail> Details { get; set; }

            public int ID { get; set; }

            public int IDPreacher { get; set; }

            public Preacher Preacher { get; set; }

            public string Subiect { get; set; }

            public string Subtitle { get; set; }

            public string Tematica { get; set; }

            public string Text { get; set; }

            public string Title { get; set; }
        }
    }

    // The MetadataTypeAttribute identifies VW_ListMetadata as the class
    // that carries additional metadata for the VW_List class.
    [MetadataTypeAttribute(typeof(VW_List.VW_ListMetadata))]
    public partial class VW_List
    {

        // This class allows you to attach custom attributes to properties
        // of the VW_List class.
        //
        // For example, the following marks the Xyz property as a
        // required property and specifies the format for valid values:
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class VW_ListMetadata
        {

            // Metadata classes are not meant to be instantiated.
            private VW_ListMetadata()
            {
            }

            public string CheckedAndLoaded { get; set; }

            public string FirstName { get; set; }

            public int IDDetail { get; set; }

            public int IDPreacher { get; set; }

            public int IDStudy { get; set; }

            public bool IsAudio { get; set; }

            public bool IsVideo { get; set; }

            public string LastName { get; set; }

            public string Subiect { get; set; }

            public string Subtitle { get; set; }

            public string Tematica { get; set; }

            public string Text { get; set; }

            public string Title { get; set; }
        }
    }
}
